WebSphere Message Broker (WMB) is IBM's integration broker from the WebSphere product family that allows business information to flow between disparate applications across multiple hardware and software platforms. Rules can be applied to the data flowing through the message broker to route and transform the information. The product is considered to be an Enterprise Service Bus providing connectivity between applications and services in a Service Oriented Architecture.
Contents |
Originally the product was developed by NEON (New Era of Networks) Inc., a company which was acquired by Sybase in 2001. The product was developed by New Era of Networks and re-branded as an IBM product called 'MQSeries Integrator' (or 'MQSI' for short). Versions of MQSI ran up to 2.0. The product was added to the WebSphere family and rebranded 'WebSphere MQ Integrator', at version 2.1. After 2.1 the version numbers became more synchronized with the rest of the WebSphere family and jumped to version 5.0. The name changed to 'WebSphere Business Integration Message Broker' (WBIMB). In this version the development environment was redesigned using Eclipse and support for Web services was integrated into the product. Since version 6.0 the product has been known as 'WebSphere Message Broker'. WebSphere Message Broker version 7.0 was announced in October 2009[1], and WebSphere Message Broker version 8.0 announced in October 2011[2]
WebSphere Message Broker consists of the following components:
The WebSphere Message Broker Toolkit enables developers to graphically design message flows and related artifacts. Once developed, these resources can be packaged into a broker archive (BAR) file and deployed into the runtime environment. At this point, the broker is able to continually process messages according to the logic described by the message flow[3]. Data may be modelled using a number of standard formats including XML and DFDL.
WebSphere Message Broker flows can be used in a Service Oriented Architecture, and if properly designed by Middleware Analysts, integrated into event-driven SOA schemas, sometimes referred to as SOA 2.0.
The workflow a developer would perform to create WMB functionality is cyclical, and probably more agile than most other software development. Developers will create a message flow, generate a BAR file, deploy the message flow contained in the BAR file, test the message flow and repeat as necessary to achieve reliable functionality.
IBM publishes performance reports[4] for WebSphere Message Broker which provide sample throughput figures. Performance varies depending on message sizes, message volumes, processing complexity (such as complexity of message transformations), system capacities (CPU, memory, network, etc.), software version and patch levels, configuration settings, and other factors. Some published tests demonstrate message rates in excess of 10,000 per second in particular configurations.
A developer can choose from many pre-designed broker 'nodes', which are used to build up a message flow. Nodes have different purposes. Some nodes map data from one format to another (for instance, Cobol or PL/I Copybook to canonical XML). Other nodes evaluate content of data and route the flow differently based on certain criteria
There are many types of node that can be used in developing message flows; the following node transformation technology options are available:[5]
A pattern captures a commonly recurring solution to a problem (example: Request-Reply pattern[7]). The specification of a pattern describes the problem being addressed, why the problem is important, and any constraints on the solution. Patterns typically emerge from common usage and the application of a particular product or technology. A pattern can be used to generate customized solutions to a recurring problem in an efficient way. We can do this pattern recognition or development through a process called service oriented modeling.
WebSphere Message Broker version 7 introduced patterns that:
The patterns cover a range of categories including file processing, application integration, and message based integration.
Currently available platforms for WebSphere Message Broker are: